// SDLUnsubscribeVehicleData.m // #import "SDLUnsubscribeVehicleData.h" #import "NSMutableDictionary+Store.h" #import "SDLRPCParameterNames.h" #import "SDLRPCFunctionNames.h" NS_ASSUME_NONNULL_BEGIN @implementation SDLUnsubscribeVehicleData #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" - (instancetype)init { self = [super initWithName:SDLRPCFunctionNameUnsubscribeVehicleData]; if (!self) { return nil; } return self; } #pragma clang diagnostic pop - (instancetype)initWithAccelerationPedalPosition:(BOOL)accPedalPosition airbagStatus:(BOOL)airbagStatus beltStatus:(BOOL)beltStatus bodyInformation:(BOOL)bodyInformation cloudAppVehicleID:(BOOL)cloudAppVehicleID clusterModeStatus:(BOOL)clusterModeStatus deviceStatus:(BOOL)deviceStatus driverBraking:(BOOL)driverBraking eCallInfo:(BOOL)eCallInfo electronicParkBrakeStatus:(BOOL)electronicParkBrakeStatus emergencyEvent:(BOOL)emergencyEvent engineOilLife:(BOOL)engineOilLife engineTorque:(BOOL)engineTorque externalTemperature:(BOOL)externalTemperature fuelLevel:(BOOL)fuelLevel fuelLevelState:(BOOL)fuelLevelState fuelRange:(BOOL)fuelRange gps:(BOOL)gps headLampStatus:(BOOL)headLampStatus instantFuelConsumption:(BOOL)instantFuelConsumption myKey:(BOOL)myKey odometer:(BOOL)odometer prndl:(BOOL)prndl rpm:(BOOL)rpm speed:(BOOL)speed steeringWheelAngle:(BOOL)steeringWheelAngle tirePressure:(BOOL)tirePressure turnSignal:(BOOL)turnSignal wiperStatus:(BOOL)wiperStatus { self = [self initWithGps:@(gps) speed:@(speed) rpm:@(rpm) instantFuelConsumption:@(instantFuelConsumption) fuelRange:@(fuelRange) climateData:nil turnSignal:@(turnSignal) gearStatus:nil tirePressure:@(tirePressure) odometer:@(odometer) beltStatus:@(beltStatus) bodyInformation:@(bodyInformation) deviceStatus:@(deviceStatus) driverBraking:@(driverBraking) wiperStatus:@(wiperStatus) headLampStatus:@(headLampStatus) engineTorque:@(engineTorque) accPedalPosition:@(accPedalPosition) steeringWheelAngle:@(steeringWheelAngle) engineOilLife:@(engineOilLife) electronicParkBrakeStatus:@(electronicParkBrakeStatus) cloudAppVehicleID:@(cloudAppVehicleID) stabilityControlsStatus:nil eCallInfo:@(eCallInfo) airbagStatus:@(airbagStatus) emergencyEvent:@(emergencyEvent) clusterModeStatus:@(clusterModeStatus) myKey:@(myKey) windowStatus:nil handsOffSteering:nil seatOccupancy:nil]; if (self) { #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" self.fuelLevel = @(fuelLevel); self.fuelLevel_State = @(fuelLevelState); self.prndl = @(prndl); self.externalTemperature = @(externalTemperature); #pragma clang diagnostic pop } return self; } - (instancetype)initWithGps:(nullable NSNumber *)gps speed:(nullable NSNumber *)speed rpm:(nullable NSNumber *)rpm instantFuelConsumption:(nullable NSNumber *)instantFuelConsumption fuelRange:(nullable NSNumber *)fuelRange externalTemperature:(nullable NSNumber *)externalTemperature turnSignal:(nullable NSNumber *)turnSignal gearStatus:(nullable NSNumber *)gearStatus tirePressure:(nullable NSNumber *)tirePressure odometer:(nullable NSNumber *)odometer beltStatus:(nullable NSNumber *)beltStatus bodyInformation:(nullable NSNumber *)bodyInformation deviceStatus:(nullable NSNumber *)deviceStatus driverBraking:(nullable NSNumber *)driverBraking wiperStatus:(nullable NSNumber *)wiperStatus headLampStatus:(nullable NSNumber *)headLampStatus engineTorque:(nullable NSNumber *)engineTorque accPedalPosition:(nullable NSNumber *)accPedalPosition steeringWheelAngle:(nullable NSNumber *)steeringWheelAngle engineOilLife:(nullable NSNumber *)engineOilLife electronicParkBrakeStatus:(nullable NSNumber *)electronicParkBrakeStatus cloudAppVehicleID:(nullable NSNumber *)cloudAppVehicleID stabilityControlsStatus:(nullable NSNumber *)stabilityControlsStatus eCallInfo:(nullable NSNumber *)eCallInfo airbagStatus:(nullable NSNumber *)airbagStatus emergencyEvent:(nullable NSNumber *)emergencyEvent clusterModeStatus:(nullable NSNumber *)clusterModeStatus myKey:(nullable NSNumber *)myKey handsOffSteering:(nullable NSNumber *)handsOffSteering windowStatus:(nullable NSNumber *)windowStatus { self = [self initWithGps:gps speed:speed rpm:rpm instantFuelConsumption:instantFuelConsumption fuelRange:fuelRange climateData:nil turnSignal:turnSignal gearStatus:gearStatus tirePressure:tirePressure odometer:odometer beltStatus:beltStatus bodyInformation:bodyInformation deviceStatus:deviceStatus driverBraking:driverBraking wiperStatus:wiperStatus headLampStatus:headLampStatus engineTorque:engineTorque accPedalPosition:accPedalPosition steeringWheelAngle:steeringWheelAngle engineOilLife:engineOilLife electronicParkBrakeStatus:electronicParkBrakeStatus cloudAppVehicleID:cloudAppVehicleID stabilityControlsStatus:stabilityControlsStatus eCallInfo:eCallInfo airbagStatus:airbagStatus emergencyEvent:emergencyEvent clusterModeStatus:clusterModeStatus myKey:myKey windowStatus:windowStatus handsOffSteering:handsOffSteering seatOccupancy:nil]; if (self) { #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" self.externalTemperature = externalTemperature; #pragma clang diagnostic pop } return self; } - (instancetype)initWithGps:(nullable NSNumber *)gps speed:(nullable NSNumber *)speed rpm:(nullable NSNumber *)rpm instantFuelConsumption:(nullable NSNumber *)instantFuelConsumption fuelRange:(nullable NSNumber *)fuelRange climateData:(nullable NSNumber *)climateData turnSignal:(nullable NSNumber *)turnSignal gearStatus:(nullable NSNumber *)gearStatus tirePressure:(nullable NSNumber *)tirePressure odometer:(nullable NSNumber *)odometer beltStatus:(nullable NSNumber *)beltStatus bodyInformation:(nullable NSNumber *)bodyInformation deviceStatus:(nullable NSNumber *)deviceStatus driverBraking:(nullable NSNumber *)driverBraking wiperStatus:(nullable NSNumber *)wiperStatus headLampStatus:(nullable NSNumber *)headLampStatus engineTorque:(nullable NSNumber *)engineTorque accPedalPosition:(nullable NSNumber *)accPedalPosition steeringWheelAngle:(nullable NSNumber *)steeringWheelAngle engineOilLife:(nullable NSNumber *)engineOilLife electronicParkBrakeStatus:(nullable NSNumber *)electronicParkBrakeStatus cloudAppVehicleID:(nullable NSNumber *)cloudAppVehicleID stabilityControlsStatus:(nullable NSNumber *)stabilityControlsStatus eCallInfo:(nullable NSNumber *)eCallInfo airbagStatus:(nullable NSNumber *)airbagStatus emergencyEvent:(nullable NSNumber *)emergencyEvent clusterModeStatus:(nullable NSNumber *)clusterModeStatus myKey:(nullable NSNumber *)myKey windowStatus:(nullable NSNumber *)windowStatus handsOffSteering:(nullable NSNumber *)handsOffSteering seatOccupancy:(nullable NSNumber *)seatOccupancy { self = [self init]; if (!self) { return nil; } self.gps = gps; self.speed = speed; self.rpm = rpm; self.instantFuelConsumption = instantFuelConsumption; self.fuelRange = fuelRange; self.climateData = climateData; self.turnSignal = turnSignal; self.gearStatus = gearStatus; self.tirePressure = tirePressure; self.odometer = odometer; self.beltStatus = beltStatus; self.bodyInformation = bodyInformation; self.deviceStatus = deviceStatus; self.driverBraking = driverBraking; self.wiperStatus = wiperStatus; self.headLampStatus = headLampStatus; self.engineTorque = engineTorque; self.accPedalPosition = accPedalPosition; self.steeringWheelAngle = steeringWheelAngle; self.engineOilLife = engineOilLife; self.electronicParkBrakeStatus = electronicParkBrakeStatus; self.cloudAppVehicleID = cloudAppVehicleID; self.stabilityControlsStatus = stabilityControlsStatus; self.eCallInfo = eCallInfo; self.airbagStatus = airbagStatus; self.emergencyEvent = emergencyEvent; self.clusterModeStatus = clusterModeStatus; self.myKey = myKey; self.windowStatus = windowStatus; self.handsOffSteering = handsOffSteering; self.seatOccupancy = seatOccupancy; return self; } - (void)setGearStatus:(nullable NSNumber *)gearStatus { [self.parameters sdl_setObject:gearStatus forName:SDLRPCParameterNameGearStatus]; } - (nullable NSNumber *)gearStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameGearStatus ofClass:NSNumber.class error:nil]; } - (void)setGps:(nullable NSNumber *)gps { [self.parameters sdl_setObject:gps forName:SDLRPCParameterNameGPS]; } - (nullable NSNumber *)gps { return [self.parameters sdl_objectForName:SDLRPCParameterNameGPS ofClass:NSNumber.class error:nil]; } - (void)setSpeed:(nullable NSNumber *)speed { [self.parameters sdl_setObject:speed forName:SDLRPCParameterNameSpeed]; } - (nullable NSNumber *)speed { return [self.parameters sdl_objectForName:SDLRPCParameterNameSpeed ofClass:NSNumber.class error:nil]; } - (void)setRpm:(nullable NSNumber *)rpm { [self.parameters sdl_setObject:rpm forName:SDLRPCParameterNameRPM]; } - (nullable NSNumber *)rpm { return [self.parameters sdl_objectForName:SDLRPCParameterNameRPM ofClass:NSNumber.class error:nil]; } - (void)setFuelLevel:(nullable NSNumber *)fuelLevel { [self.parameters sdl_setObject:fuelLevel forName:SDLRPCParameterNameFuelLevel]; } - (nullable NSNumber *)fuelLevel { return [self.parameters sdl_objectForName:SDLRPCParameterNameFuelLevel ofClass:NSNumber.class error:nil]; } - (void)setFuelLevel_State:(nullable NSNumber *)fuelLevel_State { [self.parameters sdl_setObject:fuelLevel_State forName:SDLRPCParameterNameFuelLevelState]; } - (nullable NSNumber *)fuelLevel_State { return [self.parameters sdl_objectForName:SDLRPCParameterNameFuelLevelState ofClass:NSNumber.class error:nil]; } - (void)setFuelRange:(nullable NSNumber *)fuelRange { [self.parameters sdl_setObject:fuelRange forName:SDLRPCParameterNameFuelRange]; } - (nullable NSNumber *)fuelRange { return [self.parameters sdl_objectForName:SDLRPCParameterNameFuelRange ofClass:NSNumber.class error:nil]; } - (void)setInstantFuelConsumption:(nullable NSNumber *)instantFuelConsumption { [self.parameters sdl_setObject:instantFuelConsumption forName:SDLRPCParameterNameInstantFuelConsumption]; } - (nullable NSNumber *)instantFuelConsumption { return [self.parameters sdl_objectForName:SDLRPCParameterNameInstantFuelConsumption ofClass:NSNumber.class error:nil]; } - (void)setClimateData:(nullable NSNumber *)climateData { [self.parameters sdl_setObject:climateData forName:SDLRPCParameterNameClimateData]; } - (nullable NSNumber *)climateData { return [self.parameters sdl_objectForName:SDLRPCParameterNameClimateData ofClass:NSNumber.class error:nil]; } - (void)setExternalTemperature:(nullable NSNumber *)externalTemperature { [self.parameters sdl_setObject:externalTemperature forName:SDLRPCParameterNameExternalTemperature]; } - (nullable NSNumber *)externalTemperature { return [self.parameters sdl_objectForName:SDLRPCParameterNameExternalTemperature ofClass:NSNumber.class error:nil]; } - (void)setPrndl:(nullable NSNumber *)prndl { [self.parameters sdl_setObject:prndl forName:SDLRPCParameterNamePRNDL]; } - (nullable NSNumber *)prndl { return [self.parameters sdl_objectForName:SDLRPCParameterNamePRNDL ofClass:NSNumber.class error:nil]; } - (void)setTirePressure:(nullable NSNumber *)tirePressure { [self.parameters sdl_setObject:tirePressure forName:SDLRPCParameterNameTirePressure]; } - (nullable NSNumber *)tirePressure { return [self.parameters sdl_objectForName:SDLRPCParameterNameTirePressure ofClass:NSNumber.class error:nil]; } - (void)setOdometer:(nullable NSNumber *)odometer { [self.parameters sdl_setObject:odometer forName:SDLRPCParameterNameOdometer]; } - (nullable NSNumber *)odometer { return [self.parameters sdl_objectForName:SDLRPCParameterNameOdometer ofClass:NSNumber.class error:nil]; } - (void)setBeltStatus:(nullable NSNumber *)beltStatus { [self.parameters sdl_setObject:beltStatus forName:SDLRPCParameterNameBeltStatus]; } - (nullable NSNumber *)beltStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameBeltStatus ofClass:NSNumber.class error:nil]; } - (void)setBodyInformation:(nullable NSNumber *)bodyInformation { [self.parameters sdl_setObject:bodyInformation forName:SDLRPCParameterNameBodyInformation]; } - (nullable NSNumber *)bodyInformation { return [self.parameters sdl_objectForName:SDLRPCParameterNameBodyInformation ofClass:NSNumber.class error:nil]; } - (void)setDeviceStatus:(nullable NSNumber *)deviceStatus { [self.parameters sdl_setObject:deviceStatus forName:SDLRPCParameterNameDeviceStatus]; } - (nullable NSNumber *)deviceStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameDeviceStatus ofClass:NSNumber.class error:nil]; } - (void)setDriverBraking:(nullable NSNumber *)driverBraking { [self.parameters sdl_setObject:driverBraking forName:SDLRPCParameterNameDriverBraking]; } - (nullable NSNumber *)driverBraking { return [self.parameters sdl_objectForName:SDLRPCParameterNameDriverBraking ofClass:NSNumber.class error:nil]; } - (void)setWiperStatus:(nullable NSNumber *)wiperStatus { [self.parameters sdl_setObject:wiperStatus forName:SDLRPCParameterNameWiperStatus]; } - (nullable NSNumber *)wiperStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameWiperStatus ofClass:NSNumber.class error:nil]; } - (void)setHandsOffSteering:(nullable NSNumber *)handsOffSteering { [self.parameters sdl_setObject:handsOffSteering forName:SDLRPCParameterNameHandsOffSteering]; } - (nullable NSNumber *)handsOffSteering { NSError *error = nil; return [self.parameters sdl_objectForName:SDLRPCParameterNameHandsOffSteering ofClass:NSNumber.class error:&error]; } - (void)setHeadLampStatus:(nullable NSNumber *)headLampStatus { [self.parameters sdl_setObject:headLampStatus forName:SDLRPCParameterNameHeadLampStatus]; } - (nullable NSNumber *)headLampStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameHeadLampStatus ofClass:NSNumber.class error:nil]; } - (void)setEngineOilLife:(nullable NSNumber *)engineOilLife { [self.parameters sdl_setObject:engineOilLife forName:SDLRPCParameterNameEngineOilLife]; } - (nullable NSNumber *)engineOilLife { return [self.parameters sdl_objectForName:SDLRPCParameterNameEngineOilLife ofClass:NSNumber.class error:nil]; } - (void)setEngineTorque:(nullable NSNumber *)engineTorque { [self.parameters sdl_setObject:engineTorque forName:SDLRPCParameterNameEngineTorque]; } - (nullable NSNumber *)engineTorque { return [self.parameters sdl_objectForName:SDLRPCParameterNameEngineTorque ofClass:NSNumber.class error:nil]; } - (void)setAccPedalPosition:(nullable NSNumber *)accPedalPosition { [self.parameters sdl_setObject:accPedalPosition forName:SDLRPCParameterNameAccelerationPedalPosition]; } - (nullable NSNumber *)accPedalPosition { return [self.parameters sdl_objectForName:SDLRPCParameterNameAccelerationPedalPosition ofClass:NSNumber.class error:nil]; } - (void)setSteeringWheelAngle:(nullable NSNumber *)steeringWheelAngle { [self.parameters sdl_setObject:steeringWheelAngle forName:SDLRPCParameterNameSteeringWheelAngle]; } - (nullable NSNumber *)steeringWheelAngle { return [self.parameters sdl_objectForName:SDLRPCParameterNameSteeringWheelAngle ofClass:NSNumber.class error:nil]; } - (void)setECallInfo:(nullable NSNumber *)eCallInfo { [self.parameters sdl_setObject:eCallInfo forName:SDLRPCParameterNameECallInfo]; } - (nullable NSNumber *)eCallInfo { return [self.parameters sdl_objectForName:SDLRPCParameterNameECallInfo ofClass:NSNumber.class error:nil]; } - (void)setAirbagStatus:(nullable NSNumber *)airbagStatus { [self.parameters sdl_setObject:airbagStatus forName:SDLRPCParameterNameAirbagStatus]; } - (nullable NSNumber *)airbagStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameAirbagStatus ofClass:NSNumber.class error:nil]; } - (void)setEmergencyEvent:(nullable NSNumber *)emergencyEvent { [self.parameters sdl_setObject:emergencyEvent forName:SDLRPCParameterNameEmergencyEvent]; } - (nullable NSNumber *)emergencyEvent { return [self.parameters sdl_objectForName:SDLRPCParameterNameEmergencyEvent ofClass:NSNumber.class error:nil]; } - (void)setClusterModeStatus:(nullable NSNumber *)clusterModeStatus { [self.parameters sdl_setObject:clusterModeStatus forName:SDLRPCParameterNameClusterModeStatus]; } - (nullable NSNumber *)clusterModeStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameClusterModeStatus ofClass:NSNumber.class error:nil]; } - (void)setMyKey:(nullable NSNumber *)myKey { [self.parameters sdl_setObject:myKey forName:SDLRPCParameterNameMyKey]; } - (nullable NSNumber *)myKey { return [self.parameters sdl_objectForName:SDLRPCParameterNameMyKey ofClass:NSNumber.class error:nil]; } - (void)setElectronicParkBrakeStatus:(nullable NSNumber *)electronicParkBrakeStatus { [self.parameters sdl_setObject:electronicParkBrakeStatus forName:SDLRPCParameterNameElectronicParkBrakeStatus]; } - (nullable NSNumber *)electronicParkBrakeStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameElectronicParkBrakeStatus ofClass:NSNumber.class error:nil]; } - (void)setTurnSignal:(nullable NSNumber *)turnSignal { [self.parameters sdl_setObject:turnSignal forName:SDLRPCParameterNameTurnSignal]; } - (nullable NSNumber *)turnSignal { return [self.parameters sdl_objectForName:SDLRPCParameterNameTurnSignal ofClass:NSNumber.class error:nil]; } - (void)setCloudAppVehicleID:(nullable NSNumber *)cloudAppVehicleID { [self.parameters sdl_setObject:cloudAppVehicleID forName:SDLRPCParameterNameCloudAppVehicleID]; } - (nullable NSNumber *)cloudAppVehicleID { return [self.parameters sdl_objectForName:SDLRPCParameterNameCloudAppVehicleID ofClass:NSNumber.class error:nil]; } - (void)setStabilityControlsStatus:(nullable NSNumber *)stabilityControlsStatus { [self.parameters sdl_setObject:stabilityControlsStatus forName:SDLRPCParameterNameStabilityControlsStatus]; } - (nullable NSNumber *)stabilityControlsStatus { return [self.parameters sdl_objectForName:SDLRPCParameterNameStabilityControlsStatus ofClass:NSNumber.class error:nil]; } - (void)setWindowStatus:(nullable NSNumber *)windowStatus { [self.parameters sdl_setObject:windowStatus forName:SDLRPCParameterNameWindowStatus]; } - (nullable NSNumber *)windowStatus { NSError *error = nil; return [self.parameters sdl_objectForName:SDLRPCParameterNameWindowStatus ofClass:NSNumber.class error:&error]; } - (void)setOEMCustomVehicleData:(NSString *)vehicleDataName withVehicleDataState:(BOOL)vehicleDataState { [self.parameters sdl_setObject:@(vehicleDataState) forName:vehicleDataName]; } - (nullable NSNumber *)getOEMCustomVehicleData:(NSString *)vehicleDataName { return [self.parameters sdl_objectForName:vehicleDataName ofClass:NSNumber.class error:nil]; } - (void)setSeatOccupancy:(nullable NSNumber *)seatOccupancy { [self.parameters sdl_setObject:seatOccupancy forName:SDLRPCParameterNameSeatOccupancy]; } - (nullable NSNumber *)seatOccupancy { return [self.parameters sdl_objectForName:SDLRPCParameterNameSeatOccupancy ofClass:NSNumber.class error:nil]; } @end NS_ASSUME_NONNULL_END