From 1a54527ffd6ffaa5f8fc3d4c24c09930b9d46e2b Mon Sep 17 00:00:00 2001
From: Firas Bouzazi <firas.bouzazi@imt-atlantique.net>
Date: Sun, 10 Nov 2024 18:48:11 +0100
Subject: [PATCH] firas commit

---
 .settings/org.eclipse.core.resources.prefs      | 1 +
 src/main/java/org/petriNet/Arc_videur.java      | 4 ++--
 src/main/java/org/petriNet/Arc_zero.java        | 2 +-
 src/main/java/org/petriNet/Place.java           | 3 ++-
 src/main/java/org/petriNet/ReseauPetri.java     | 6 +++---
 src/test/java/org/petriNet/ReseauPetriTest.java | 9 +++++++++
 6 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
index e9441bb..f9fe345 100644
--- a/.settings/org.eclipse.core.resources.prefs
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -1,3 +1,4 @@
 eclipse.preferences.version=1
 encoding//src/main/java=UTF-8
+encoding//src/test/java=UTF-8
 encoding/<project>=UTF-8
diff --git a/src/main/java/org/petriNet/Arc_videur.java b/src/main/java/org/petriNet/Arc_videur.java
index e0193bf..3d53060 100644
--- a/src/main/java/org/petriNet/Arc_videur.java
+++ b/src/main/java/org/petriNet/Arc_videur.java
@@ -16,7 +16,7 @@ public class Arc_videur extends Arc_ENTRANT {
 
     @Override
     public boolean verifier_tirable() {
-        if (this.place.get_nombre_jetons() > 0) {
+        if ( this.getPlace().get_nombre_jetons()  > 0) {
             return true;
         }
         return false;
@@ -26,7 +26,7 @@ public class Arc_videur extends Arc_ENTRANT {
     public void valider() {
         // On retire le nombre de jetons du poids de l'arc
         // prendre en cond la place choisie
-        this.place.enlever_jeton(this.place.get_nombre_jetons());
+        this.getPlace().enlever_jeton(this.getPlace().get_nombre_jetons());
     }
 
 
diff --git a/src/main/java/org/petriNet/Arc_zero.java b/src/main/java/org/petriNet/Arc_zero.java
index 0bc6433..3fd600e 100644
--- a/src/main/java/org/petriNet/Arc_zero.java
+++ b/src/main/java/org/petriNet/Arc_zero.java
@@ -17,6 +17,6 @@ package org.petriNet;
 
     @Override
     public boolean verifier_tirable() {
-        return this.place.get_nombre_jetons() == 0;
+        return this.getPlace().get_nombre_jetons() == 0;
     }
 }
diff --git a/src/main/java/org/petriNet/Place.java b/src/main/java/org/petriNet/Place.java
index af7b421..68d990b 100644
--- a/src/main/java/org/petriNet/Place.java
+++ b/src/main/java/org/petriNet/Place.java
@@ -27,7 +27,8 @@ public class Place {
     public void enlever_jeton(int jetons) {
         // verify that the number of tokens is not negative
         if (jetons >= 0) {
-            this.nombre_jeton -= jetons;
+            this.nombre_jeton = Math.max(0, this.nombre_jeton - jetons);
+
         } else {
             System.out.println("The number of tokens cannot be negative.");
         }
diff --git a/src/main/java/org/petriNet/ReseauPetri.java b/src/main/java/org/petriNet/ReseauPetri.java
index 4a15acf..5da5700 100644
--- a/src/main/java/org/petriNet/ReseauPetri.java
+++ b/src/main/java/org/petriNet/ReseauPetri.java
@@ -111,7 +111,7 @@ public class ReseauPetri implements PetriNetService {
 	public void supprimerPlace(Place place) {
 		this.places.remove(place);
 		// remove all arcs linked to the place
-        this.arcs.removeIf(arc -> arc.getPlace().getId() == place.getId());
+		this.arcs.removeIf(arc -> arc.getPlace().getId() == place.getId());
 	}
 
 	@Override
@@ -209,8 +209,8 @@ public class ReseauPetri implements PetriNetService {
 		System.out.println(this.arcs.size() + " arcs");
 
 		System.out.println("Liste des places :");
-			// On parcourt la liste des arcs pour afficher les places
-			// une liste pur les arcs entrants et une liste pour les arcs sortants
+		// On parcourt la liste des arcs pour afficher les places
+		// une liste pur les arcs entrants et une liste pour les arcs sortants
 		for (Place place : this.places) {
 			List<Arc> arcs_ENTRANTS = new ArrayList<>();
 			List<Arc> arcs_SORTANTS = new ArrayList<>();
diff --git a/src/test/java/org/petriNet/ReseauPetriTest.java b/src/test/java/org/petriNet/ReseauPetriTest.java
index ed12878..1f4c30c 100644
--- a/src/test/java/org/petriNet/ReseauPetriTest.java
+++ b/src/test/java/org/petriNet/ReseauPetriTest.java
@@ -605,4 +605,13 @@ public class ReseauPetriTest {
         assertEquals(0, Destruction.getArcs().size(), "SA1");
     }
 
+
+
+
+
+
+
+
 }
+
+
-- 
GitLab