package secarc.seccds; // import message types import secarc.seccds.msg.*; import java.awt.Image; // import components import secarc.seccds.fe.CashDesk; import secarc.seccds.be.Bank; import secarc.seccds.fe.Store; component CashDeskSystem { trustlevel +0 "interne Angreifer"; autoconnect encrypted port; autoinstantiate on; accesscontrol on; port in Event newSale, in Image barcode, in Event endSale, out ProductData outProductData; port in Event cardPay, in CardData, in Integer pin, out Boolean validation; component CashDesk cashDesk [encrypted bdOut -> bank.bankData; saleInformation -> store.saleInformation]; component Bank; component Store; connect encrypted bank.paymentAck -> cashDesk.paIn; connect cashDesk -> store; connect cashDesk.outProductData -> outProductData; connect store.outProductData -> cashDesk.inProductData; }