airs_ci-408
Table of Contents
AIRS_CI-408 Preventive Action 7.1 - Architecture Rule
AIRS_CI-408 Preventive Action 7.1 - Architecture Rule
Commit from Stefan, which defines architectural rules.
Commit from Burkhard, which reverts Commit from Stefan (because of a startup failure).
AIRS_CI-395 AIRS Escalation finding: Refactor CDI Beans to stateless beans
Change in Gerrit (First Change in Gerrit) (Cherry Pick of Burkhard to release/rel_20)
Task Description
Implement architectural rule to ensure that concurrent import processes do not operate on shared memory.
Acceptance Criteria
An architectural rule has to be implemented:
- The rule is implemented as static JUnit test
- The rule checks for state in CDI beans
- If the rule detects a violation, the complete build process must fail and report an error
Burkhard
- the test is already existing (
CDIandEJBArchitectureTest.beansMustNotHaveAnyState) - the goal is to refactor all classes which were excepted fromm this test
Refactor beans
- - Refactor beans
- - ConcessionCreateXMLHandler.class
- - is not stateless as it keeps state in field cfg
- - is not stateless as it keeps state in field currentCtrlArea
- - is not stateless as it keeps state in field doc
- - is not stateless as it keeps state in field isAirbusConcession
- - is not stateless as it keeps state in field manager
- - is not stateless as it keeps state in field mimeMessageImportProcessor
- - is not stateless as it keeps state in field nCreationTimeStamp
- - is not stateless as it keeps state in field nReceivingTimeStamp
- - is not stateless as it keeps state in field ncrHeader
- - is not stateless as it keeps state in field ncrPositions
- - is not stateless as it keeps state in field procResult
- - is not stateless as it keeps state in field props
- - is not stateless as it keeps state in field protoNCRHeader
- - is not stateless as it keeps state in field sExternalMessageId
- - is not stateless as it keeps state in field sInternalMessageId
- - is not stateless as it keeps state in field sReceiverInfo
- - is not stateless as it keeps state in field sSenderInfo
- - is not stateless as it keeps state in field sStatus
- - NCRResponseXMLHandler
- - is not stateless as it keeps state in field cfg
- - is not stateless as it keeps state in field currentCtrlArea
- - is not stateless as it keeps state in field doc
- - is not stateless as it keeps state in field manager
- - is not stateless as it keeps state in field mimeMessageImportProcessor
- - is not stateless as it keeps state in field nCreationTimeStamp
- - is not stateless as it keeps state in field nReceivingTimeStamp
- - is not stateless as it keeps state in field ncrHeader
- - is not stateless as it keeps state in field ncrPositions
- - is not stateless as it keeps state in field procResult
- - is not stateless as it keeps state in field props
- - is not stateless as it keeps state in field sExternalMessageId
- - is not stateless as it keeps state in field sInternalMessageId
- - is not stateless as it keeps state in field sReceiverInfo
- - is not stateless as it keeps state in field sSenderInfo
- - is not stateless as it keeps state in field sStatus
- - NcrQualityReportXmlHandler
- - is not stateless as it keeps state in field includedAttachments
- - is not stateless as it keeps state in field mimeHandlerMessageFormat
- - is not stateless as it keeps state in field portalGroup
- - is not stateless as it keeps state in field xmlDoc
- - NcrQualityReportJob
- - is not stateless as it keeps state in field stopped
- - POFinalizerJob
- - is not stateless as it keeps state in field bJobStopped
- - POCustomerImportCSV
- - is not stateless as it keeps state in field bCollabProcessed
- - is not stateless as it keeps state in field changeVerifier
- - is not stateless as it keeps state in field dbData
- - is not stateless as it keeps state in field importData
- - is not stateless as it keeps state in field userContext
- - POCustomerImportXML
- - is not stateless as it keeps state in field bCollabProcessed
- - is not stateless as it keeps state in field changeVerifier
- - is not stateless as it keeps state in field dbData
- - is not stateless as it keeps state in field importData
- - is not stateless as it keeps state in field userContext
- - POSupplierImportCSV
- - is not stateless as it keeps state in field bCollabProcessed
- - is not stateless as it keeps state in field changeVerifier
- - is not stateless as it keeps state in field dbData
- - is not stateless as it keeps state in field importData
- - is not stateless as it keeps state in field userContext
- - POSupplierImportXML
- - is not stateless as it keeps state in field bCollabProcessed
- - is not stateless as it keeps state in field changeVerifier
- - is not stateless as it keeps state in field dbData
- - is not stateless as it keeps state in field importData
- - is not stateless as it keeps state in field userContext
- + EquipmentProcessDefinition
- + NoeProcessDefinition
- + NonAirbusProcessDefinition
- + StandardPartProcessDefinition
Commit from Stefan
@ArchTest- airsupply/src/java-test/com/seeburger/airsupply/CDIandEJBArchitectureTest.java
- Changed interface of class
AbstractAlertCSVDownload(methods returnvoidnow)- airsupply-base/src/java/com/seeburger/airsupply/alertmon/control/AbstractAlertCSVDownload.java
- airsupply/src/java-test/com/seeburger/airsupply/alertmon/control/ConcessionAlertCSVDownloadScreenTest.java
- airsupply/src/java-test/com/seeburger/airsupply/alertmon/control/NOEAlertCSVDownloadScreenTest.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/ConcessionAlertCSVDownloadScreen.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/ForecastAlertCSVDownloadScreen.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/MDAlertCSVDownloadScreen.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/NOEAlertCSVDownloadScreen.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/POAlertCSVDownloadScreen.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/SBIAlertCSVDownloadScreen.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/VMIAlertCSVDownloadScreen.java
- Removed
init()/super.init()- airsupply/src/java/com/seeburger/airsupply/ncr/manager/ConcessionNCRManagerEJB.java
- airsupply/src/java/com/seeburger/airsupply/ncr/manager/NOENCRManagerEJB.java
- airsupply/src/java/com/seeburger/airsupply/ncr/manager/NCRManagerEJB.java (removed
init())
- Set
@ApplicationScoped- airsupply/src/java/com/seeburger/airsupply/ncr/alertmon/NCRAlertMonitorConnector.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/BasicProcessDefinitionDeterminator.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/ConcessionTemplateDownloadScreenInfo.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/NCRAttachmentCheckCreateRight.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/NcrPrintActionScreenUtil.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/NCRRedirectURL.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/NCRRightFilterFactory.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/NCRRightsCheck.java
- airsupply/src/java/com/seeburger/airsupply/ncr/control/NoeTemplateDownloadScreenInfo.java
- airsupply/src/java/com/seeburger/airsupply/ncr/exchange/NCRXMLImportUtil.java
- airsupply/src/java/com/seeburger/airsupply/ncr/manager/processes/AgnosticFieldDefinitions.java
- airsupply/src/java/com/seeburger/airsupply/ncr/shared/util/NCRCustomerConfigTypeProvider.java
- Made class public
- airsupply/src/java/com/seeburger/airsupply/po/manager/importprocessor/POCustomerImportCSV.java
- airsupply/src/java/com/seeburger/airsupply/po/manager/importprocessor/POCustomerImportXML.java
- airsupply/src/java/com/seeburger/airsupply/po/manager/importprocessor/POSupplierImportCSV.java
- airsupply/src/java/com/seeburger/airsupply/po/manager/importprocessor/POSupplierImportXML.java
- Misc
- airsupply-base/src/java/com/seeburger/airsupply/alertmon/manager/SASAlertManagerEJB.java
- airsupply/src/java/com/seeburger/airsupply/alertmon/control/ConcessionAlertOverviewScreen.java
- airsupply/src/java/com/seeburger/airsupply/ncr/exchange/qualityreport/NcrQualityReportXmlHandler.java
airs_ci-408.txt · Last modified: by kalaschnikow
