public IEcuIdentifier Build(IPsdzEcuIdentifier ecuIdentifierInput) { if (ecuIdentifierInput == null) { return(null); } return(this.BuildEcuIdentifier(ecuIdentifierInput.BaseVariant, ecuIdentifierInput.DiagAddrAsInt)); }
private EcuProgrammingInfo GetCorrespondingEcu(IPsdzEvent psdzEvent) { IPsdzEcuIdentifier ecuId = psdzEvent.EcuId; int num = (ecuId != null) ? ecuId.DiagAddrAsInt : 255; if (!this.diagAddrToEcuMap.ContainsKey((long)num)) { return(null); } return(this.diagAddrToEcuMap[(long)num]); }
public IPsdzStandardSvt BuildStandardSvtActualFromVehicleContext(IVehicle vehicleContext, IEnumerable <IPsdzEcuIdentifier> ecuListFromPsdz = null) { MethodBase currentMethod = MethodBase.GetCurrentMethod(); IPsdzStandardSvt result; try { PsdzStandardSvt psdzStandardSvt = null; if (vehicleContext != null && vehicleContext.ECU != null) { psdzStandardSvt = new PsdzStandardSvt(); IList <IPsdzEcu> list = new List <IPsdzEcu>(); using (IEnumerator <IEcu> enumerator = vehicleContext.ECU.GetEnumerator()) { while (enumerator.MoveNext()) { IEcu srcEcu = enumerator.Current; PsdzEcu psdzEcu = new PsdzEcu(); IPsdzEcuIdentifier psdzEcuIdentifier = (ecuListFromPsdz == null) ? null : ecuListFromPsdz.FirstOrDefault((IPsdzEcuIdentifier e) => e.DiagAddrAsInt == (int)srcEcu.ID_SG_ADR); if (psdzEcuIdentifier != null) { psdzEcu.PrimaryKey = this.BuildEcuIdentifier((int)srcEcu.ID_SG_ADR, psdzEcuIdentifier.BaseVariant); } else { psdzEcu.PrimaryKey = this.BuildEcuIdentifier((int)srcEcu.ID_SG_ADR, srcEcu.ECU_GROBNAME); } PsdzStandardSvk psdzStandardSvk = new PsdzStandardSvk(); PsdzClient.Utility.SgbmIdParser sgbmIdParser = new PsdzClient.Utility.SgbmIdParser(); IList <IPsdzSgbmId> list2 = new List <IPsdzSgbmId>(); foreach (string sgbmId in srcEcu.SVK.XWE_SGBMID) { if (sgbmIdParser.ParseDec(sgbmId)) { IPsdzSgbmId item = this.BuildPsdzSgbmId(sgbmIdParser.ProcessClass, sgbmIdParser.Id, sgbmIdParser.MainVersion, sgbmIdParser.SubVersion, sgbmIdParser.PatchVersion); list2.Add(item); } } psdzStandardSvk.SgbmIds = list2; psdzEcu.StandardSvk = psdzStandardSvk; list.Add(psdzEcu); } } psdzStandardSvt.Ecus = list; } result = psdzStandardSvt; } catch (Exception) { result = null; } return(result); }
public void FillOrderNumbers(IPsdzSollverbauung sollVerbauung, IDictionary <string, string> result) { IPsdzStandardSvt svt = sollVerbauung.Svt; IPsdzOrderList psdzOrderList = sollVerbauung.PsdzOrderList; IEnumerable <IPsdzEcu> ecus = svt.Ecus; if (ecus == null) { return; } foreach (IPsdzEcu ecuInput in ecus) { IEcuObj ecuObj = this.Build(ecuInput); if (psdzOrderList != null && psdzOrderList.BntnVariantInstances != null) { foreach (IPsdzEcuVariantInstance psdzEcuVariantInstance in psdzOrderList.BntnVariantInstances) { IPsdzEcu ecu = psdzEcuVariantInstance.Ecu; string a = (ecu != null) ? ecu.BaseVariant : null; IEcuIdentifier ecuIdentifier = ecuObj.EcuIdentifier; if (a == ((ecuIdentifier != null) ? ecuIdentifier.BaseVariant : null)) { IPsdzEcu ecu2 = psdzEcuVariantInstance.Ecu; int? num; if (ecu2 == null) { num = null; } else { IPsdzEcuIdentifier primaryKey = ecu2.PrimaryKey; num = ((primaryKey != null) ? new int?(primaryKey.DiagAddrAsInt) : null); } int? num2 = num; IEcuIdentifier ecuIdentifier2 = ecuObj.EcuIdentifier; int? num3 = (ecuIdentifier2 != null) ? new int?(ecuIdentifier2.DiagAddrAsInt) : null; if (num2.GetValueOrDefault() == num3.GetValueOrDefault() & num2 != null == (num3 != null)) { string key = this.BuildKey(psdzEcuVariantInstance.Ecu); IPsdzOrderPart orderablePart = psdzEcuVariantInstance.OrderablePart; result.Add(key, (orderablePart != null) ? orderablePart.SachNrTais : null); break; } } } } } }
private IPsdzSwtEcu BuildSwtEcu(ISwtEcu swtEcuInput) { if (swtEcuInput == null) { return(null); } PsdzSwtEcu psdzSwtEcu = new PsdzSwtEcu(); IPsdzEcuIdentifier ecuIdentifier = this.BuildEcuIdentifier(swtEcuInput.EcuIdentifier); psdzSwtEcu.EcuIdentifier = ecuIdentifier; psdzSwtEcu.RootCertState = this.rootCertificateStateEnumMapper.GetValue(swtEcuInput.RootCertificateState); psdzSwtEcu.SoftwareSigState = this.softwareSigStateEnumMapper.GetValue(swtEcuInput.SoftwareSigState); IList <IPsdzSwtApplication> list = new List <IPsdzSwtApplication>(); foreach (ISwtApplication swtApplication in swtEcuInput.SwtApplications) { IPsdzSwtApplication item = this.BuildSwtApplication(swtApplication); list.Add(item); } psdzSwtEcu.SwtApplications = list; return(psdzSwtEcu); }
internal void UpdateProgrammingActions(IPsdzTal tal, int escalationStep) { foreach (IPsdzEcuIdentifier psdzEcuIdentifier in tal.AffectedEcus) { EcuProgrammingInfo itemFromProgrammingInfos = this.GetItemFromProgrammingInfos((long)psdzEcuIdentifier.DiagAddrAsInt); if (itemFromProgrammingInfos != null) { IPsdzEcuIdentifier id = psdzEcuIdentifier; IEnumerable <IPsdzTalLine> talLines = from talLine in tal.TalLines where talLine.EcuIdentifier.Equals(id) select talLine; itemFromProgrammingInfos.UpdateProgrammingActions(talLines, true, escalationStep); } else { //Log.Warning("EcuProgrammingInfos.UpdateProgrammingActions", "Could not find ecu programming object for 0x{0:X2}", new object[] //{ // psdzEcuIdentifier.DiagAddrAsInt //}); } } }
public IPsdzTal SetPreferredFlashProtocol(IPsdzTal tal, IPsdzEcuIdentifier ecu, PsdzProtocol psdzProtocol) { return(base.CallFunction <IPsdzTal>((IObjectBuilderService service) => service.SetPreferredFlashProtocol(tal, ecu, psdzProtocol))); }
public IEnumerable <IPsdzEcuFailureResponseCto> DeleteSecureToken(IPsdzConnection pConnection, IPsdzEcuIdentifier psdzEcuIdentifier, IPsdzFeatureIdCto psdzFeatureId) { return(base.CallFunction <IEnumerable <IPsdzEcuFailureResponseCto> >((ISecureFeatureActivationService service) => service.DeleteSecureToken(pConnection, psdzEcuIdentifier, psdzFeatureId))); }
public IEnumerable <IPsdzSecurityBackendRequestFailureCto> RequestNewestSecureTokenPackageForEcuOffline(string requestFile, string client, string system, IPsdzVin vin, bool rebuildTokens, IPsdzEcuIdentifier ecu) { return(base.CallFunction <IEnumerable <IPsdzSecurityBackendRequestFailureCto> >((ISecureFeatureActivationService service) => service.RequestNewestSecureTokenPackageForEcuOffline(requestFile, client, system, vin, rebuildTokens, ecu))); }
public bool StoreFsc(IPsdzConnection connection, byte[] fsc, IPsdzEcuIdentifier ecuIdentifier, IPsdzSwtApplicationId swtApplicationId) { return(base.CallFunction <bool>((IProgrammingService m) => m.StoreFsc(connection, fsc, ecuIdentifier, swtApplicationId))); }
public IPsdzSwtAction RequestSwtAction(IPsdzConnection connection, IPsdzEcuIdentifier ecuIdentifier, IPsdzSwtApplicationId swtApplicationId, bool periodicalCheck) { return(base.CallFunction <IPsdzSwtAction>((IProgrammingService m) => m.RequestSwtAction(connection, ecuIdentifier, swtApplicationId, periodicalCheck))); }
public byte[] GetFsc(IPsdzConnection connection, IPsdzEcuIdentifier ecuIdentifier, IPsdzSwtApplicationId swtApplicationId) { return(base.CallFunction <byte[]>((IProgrammingService m) => m.GetFsc(connection, ecuIdentifier, swtApplicationId))); }
public IDictionary <string, object> ExecuteAsamJob(IPsdzConnection connection, IPsdzEcuIdentifier ecuIdentifier, string jobId, IPsdzAsamJobInputDictionary inputDictionary) { return(base.CallFunction <IDictionary <string, object> >((IProgrammingService m) => m.ExecuteAsamJob(connection, ecuIdentifier, jobId, inputDictionary))); }
public bool DisableFsc(IPsdzConnection connection, IPsdzEcuIdentifier ecuIdentifier, IPsdzSwtApplicationId swtApplicationId) { return(base.CallFunction <bool>((IProgrammingService m) => m.DisableFsc(connection, ecuIdentifier, swtApplicationId))); }