10 Commits adc52508be ... 351ab6de10

Autore SHA1 Messaggio Data
  Marc Mültin 351ab6de10 Merge pull request #73 from SwitchEV/fix/charge_param_discovery_renegotiate 3 anni fa
  Marc Mültin c6b57c3403 Merge pull request #76 from SwitchEV/dependency-upgrades-java-11 3 anni fa
  Marc Mültin 241dfdfad1 Merge pull request #59 from jessekerkhoven/master 3 anni fa
  Marc Mültin a30284c6f7 Merge pull request #83 from SwitchEV/dependabot/maven/RISE-V2G-Shared/org.apache.logging.log4j-log4j-api-2.17.1 3 anni fa
  Marc Mültin 4d39aaa8ea Merge pull request #84 from SwitchEV/dependabot/maven/RISE-V2G-Shared/org.apache.logging.log4j-log4j-core-2.17.1 3 anni fa
  dependabot[bot] b2d6be30bb Bump log4j-core from 2.17.0 to 2.17.1 in /RISE-V2G-Shared 4 anni fa
  dependabot[bot] aaa4b5e64a Bump log4j-api from 2.13.3 to 2.17.1 in /RISE-V2G-Shared 4 anni fa
  Jesse Kerkhoven 8853f7eb40 dependency upgrades for java 11 4 anni fa
  Jesse Kerkhoven bd6c54ca51 Fix: store new calculated ChargeParameterDiscoveryReq for when EVSEProcessing is Ongoing after renegotiation 4 anni fa
  Jesse Kerkhoven 4c39ea3921 Fix: ServiceDetailsToBeRequested to be a Integer instead of a short 4 anni fa

+ 4 - 4
RISE-V2G-EVCC/src/main/java/com/v2gclarity/risev2g/evcc/session/V2GCommunicationSessionEVCC.java

@@ -95,7 +95,7 @@ public class V2GCommunicationSessionEVCC extends V2GCommunicationSession impleme
 	private ChargingProfileType chargingProfile;
 	private ServiceListType offeredServices;
 	private SelectedServiceListType selectedServices; 
-	private ArrayList<Short> serviceDetailsToBeRequested;
+	private ArrayList<Integer> serviceDetailsToBeRequested;
 	private EnergyTransferModeType requestedEnergyTransferMode;
 	private long evseScheduleReceived; // The timestamp of receiving the SAScheduleList from the EVSE, is used as a reference
 	private List<AppProtocolType> supportedAppProtocols;
@@ -436,9 +436,9 @@ public class V2GCommunicationSessionEVCC extends V2GCommunicationSession impleme
 	}
 
 
-	public ArrayList<Short> getServiceDetailsToBeRequested() {
+	public ArrayList<Integer> getServiceDetailsToBeRequested() {
 		if (serviceDetailsToBeRequested == null) {
-			serviceDetailsToBeRequested = new ArrayList<Short>();
+			serviceDetailsToBeRequested = new ArrayList<Integer>();
 		}
 		
 		return serviceDetailsToBeRequested;
@@ -446,7 +446,7 @@ public class V2GCommunicationSessionEVCC extends V2GCommunicationSession impleme
 
 
 	public void setServiceDetailsToBeRequested(
-			ArrayList<Short> serviceDetailsToBeRequested) {
+			ArrayList<Integer> serviceDetailsToBeRequested) {
 		this.serviceDetailsToBeRequested = serviceDetailsToBeRequested;
 	}
 

+ 2 - 2
RISE-V2G-EVCC/src/main/java/com/v2gclarity/risev2g/evcc/states/ClientState.java

@@ -230,10 +230,10 @@ public abstract class ClientState extends State {
 	 */
 	protected ServiceDetailReqType getServiceDetailReq() {
 		if (getCommSessionContext().getServiceDetailsToBeRequested().size() > 0) {
-			ListIterator<Short> listIterator = getCommSessionContext().getServiceDetailsToBeRequested().listIterator();
+			ListIterator<Integer> listIterator = getCommSessionContext().getServiceDetailsToBeRequested().listIterator();
 			
 			ServiceDetailReqType serviceDetailReq = new ServiceDetailReqType();
-			serviceDetailReq.setServiceID((short) listIterator.next());
+			serviceDetailReq.setServiceID(listIterator.next());
 			
 			listIterator.remove();
 			

+ 9 - 1
RISE-V2G-EVCC/src/main/java/com/v2gclarity/risev2g/evcc/states/WaitForPowerDeliveryRes.java

@@ -29,6 +29,7 @@ import com.v2gclarity.risev2g.shared.enumerations.CPStates;
 import com.v2gclarity.risev2g.shared.enumerations.V2GMessages;
 import com.v2gclarity.risev2g.shared.messageHandling.ReactionToIncomingMessage;
 import com.v2gclarity.risev2g.shared.messageHandling.TerminateSession;
+import com.v2gclarity.risev2g.shared.v2gMessages.msgDef.ChargeParameterDiscoveryReqType;
 import com.v2gclarity.risev2g.shared.v2gMessages.msgDef.ChargingSessionType;
 import com.v2gclarity.risev2g.shared.v2gMessages.msgDef.ChargingStatusReqType;
 import com.v2gclarity.risev2g.shared.v2gMessages.msgDef.DCEVStatusType;
@@ -65,8 +66,15 @@ public class WaitForPowerDeliveryRes extends ClientState {
 				if (getCommSessionContext().getRequestedEnergyTransferMode().toString().startsWith("DC")) {
 					getCommSessionContext().setChangeToState(CPStates.STATE_B);
 				}
+				ChargeParameterDiscoveryReqType chargeParameterDiscoveryReq = getChargeParameterDiscoveryReq();
+
+				/*
+				 * Save this request in case the ChargeParameterDiscoveryRes indicates that the EVSE is
+				 * still processing. Then this request can just be resent instead of asking the EV again.
+				 */
+				getCommSessionContext().setChargeParameterDiscoveryReq(chargeParameterDiscoveryReq);
 				
-				return getSendMessage(getChargeParameterDiscoveryReq(), V2GMessages.CHARGE_PARAMETER_DISCOVERY_RES);
+				return getSendMessage(chargeParameterDiscoveryReq, V2GMessages.CHARGE_PARAMETER_DISCOVERY_RES);
 			} else if (getCommSessionContext().getChargingSession() != null && 
 					   getCommSessionContext().getChargingSession() == ChargingSessionType.TERMINATE) {
 				return getSendMessage(ChargingSessionType.TERMINATE);

+ 1 - 1
RISE-V2G-EVCC/src/main/java/com/v2gclarity/risev2g/evcc/states/WaitForServiceDiscoveryRes.java

@@ -176,7 +176,7 @@ public class WaitForServiceDiscoveryRes extends ClientState {
 		 * so don't send a ServiceDetailReq for a ChargeService
 		 */
 		if (serviceID != 1)
-			getCommSessionContext().getServiceDetailsToBeRequested().add((short) serviceID);
+			getCommSessionContext().getServiceDetailsToBeRequested().add(serviceID);
 	}
 	
 	

+ 17 - 2
RISE-V2G-Shared/pom.xml

@@ -37,12 +37,12 @@
 		<dependency>
 		    <groupId>org.apache.logging.log4j</groupId>
 		    <artifactId>log4j-api</artifactId>
-		    <version>2.13.3</version>
+		    <version>2.17.1</version>
 		</dependency>
 		<dependency>
 		    <groupId>org.apache.logging.log4j</groupId>
 		    <artifactId>log4j-core</artifactId>
-		    <version>2.17.0</version>
+		    <version>2.17.1</version>
 		</dependency>
 		<dependency>
 			<groupId>net.sourceforge.openexi</groupId>
@@ -54,6 +54,21 @@
 			<artifactId>nagasena-rta</artifactId>
 			<version>0000.0002.0052.0</version>
 		</dependency>
+		<dependency>
+			<groupId>javax.xml.bind</groupId>
+			<artifactId>jaxb-api</artifactId>
+			<version>2.3.1</version>
+		</dependency>
+		<dependency>
+			<groupId>com.sun.xml.bind</groupId>
+			<artifactId>jaxb-core</artifactId>
+			<version>2.3.0</version>
+		</dependency>
+		<dependency>
+			<groupId>com.sun.xml.bind</groupId>
+			<artifactId>jaxb-impl</artifactId>
+			<version>2.3.5</version>
+		</dependency>
 	</dependencies>
 	
 </project>