private void checkKaufentscheidungForBuy(Produkt produkt, Message msg) { if (produkt.kaufCounter > kaufheard && buyCounter > produkt.buyCounter) { //schicke nachricht an firma und nachbarn und zähle den buycounter hoch BuyProduct(produkt, msg); } else { Console.WriteLine("--Buy Counter erreicht oder Schwelle nicht erreicht: "); Console.WriteLine("Buycounter: " + produkt.buyCounter + "/" + buyCounter); Console.WriteLine("Kaufschwelle fuer Buynachrichten: " + kaufheard); } }
private void checkKaufentscheidungForWerbung(Produkt produkt, Message msg) { //checke ob die schwelle für das produkt erreicht ist // wieviele kampagnen gehört schwelle wieviel dürfen gekauft werden > if (produkt.werbungCounter > werbungheard && buyCounter > produkt.buyCounter) { BuyProduct(produkt, msg); } else { Console.WriteLine("--Buy Counter ist abgelaufen oder Schwelle nicht erreicht: "); Console.WriteLine("Buycounter: " + produkt.buyCounter + "/" + buyCounter); Console.WriteLine("Kaufschwelle fuer Werbung: " + werbungheard); } }
private void checkKaufentscheidungForWerbung(Produkt produkt, Message msg) { //checke ob die schwelle für das produkt erreicht ist if (produkt.werbungCounter > werbungheard && buyCounter > produkt.werbungCounter) { BuyProduct(produkt, msg); } else { Console.WriteLine("--Buy Counter ist abgelaufen oder Schwelle nicht erreicht: "); Console.WriteLine("Buycounter: " + buyCounter); Console.WriteLine("ProduktBuycounter(Produkt gekauft): " + produkt.buyCounter);; Console.WriteLine("Kaufschwelle fuer Werbung: " + werbungheard); } }
private void analyseBuyMsg(Message msg) { Produkt current = new Produkt(msg.nachricht); if (products.Contains(current)) { //bereits gehört --> counter hochzählen products[products.IndexOf(current)].kaufCounter++; checkKaufentscheidungForBuy(products[products.IndexOf(current)], msg); Console.WriteLine("Buy nachricht erhalten und kenne das produkt schon; gehört: " + products[products.IndexOf(current)].kaufCounter); } else { products.Add(current); } }
private void analyseCampaign(Message msg) { //analysiere die nachricht und tu was zu tun ist //sende selbe nachricht weiter an alle customer knoten //erhöhe t und t' für erhaltenes produkt Produkt current = new Produkt(msg.nachricht); if (products.Contains(current)) { //bereits gehört --> counter hochzählen products[products.IndexOf(current)].werbungCounter++; checkKaufentscheidungForWerbung(products[products.IndexOf(current)], msg); Console.WriteLine("Buy nachricht erhalten und kenne das produkt schon; kaufcounter: " + products[products.IndexOf(current)].werbungCounter); } else { products.Add(current); } }