summaryrefslogtreecommitdiff
path: root/SmartDeviceLink/SDLPerformAppServiceInteraction.m
diff options
context:
space:
mode:
Diffstat (limited to 'SmartDeviceLink/SDLPerformAppServiceInteraction.m')
-rw-r--r--SmartDeviceLink/SDLPerformAppServiceInteraction.m86
1 files changed, 86 insertions, 0 deletions
diff --git a/SmartDeviceLink/SDLPerformAppServiceInteraction.m b/SmartDeviceLink/SDLPerformAppServiceInteraction.m
new file mode 100644
index 000000000..292ae39b4
--- /dev/null
+++ b/SmartDeviceLink/SDLPerformAppServiceInteraction.m
@@ -0,0 +1,86 @@
+//
+// SDLPerformAppServiceInteraction.m
+// SmartDeviceLink
+//
+// Created by Nicole on 2/6/19.
+// Copyright © 2019 smartdevicelink. All rights reserved.
+//
+
+#import "SDLPerformAppServiceInteraction.h"
+
+#import "NSMutableDictionary+Store.h"
+#import "SDLRPCParameterNames.h"
+#import "SDLRPCFunctionNames.h"
+
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLPerformAppServiceInteraction
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLRPCFunctionNamePerformAppServiceInteraction]) {
+ }
+ return self;
+}
+
+- (instancetype)initWithServiceUri:(NSString *)serviceUri serviceID:(NSString *)serviceID originApp:(NSString *)originApp {
+ self = [self init];
+ if (!self) {
+ return nil;
+ }
+
+ self.serviceUri = serviceUri;
+ self.serviceID = serviceID;
+ self.originApp = originApp;
+
+ return self;
+}
+
+- (instancetype)initWithServiceUri:(NSString *)serviceUri serviceID:(NSString *)serviceID originApp:(NSString *)originApp requestServiceActive:(BOOL)requestServiceActive {
+ self = [self initWithServiceUri:serviceUri serviceID:serviceID originApp:originApp];
+ if (!self) {
+ return nil;
+ }
+
+ self.requestServiceActive = @(requestServiceActive);
+
+ return self;
+}
+
+- (void)setServiceUri:(NSString *)serviceUri {
+ [parameters sdl_setObject:serviceUri forName:SDLRPCParameterNameServiceUri];
+}
+
+- (NSString *)serviceUri {
+ NSError *error = nil;
+ return [parameters sdl_objectForName:SDLRPCParameterNameServiceUri ofClass:NSString.class error:&error];
+}
+
+- (void)setServiceID:(NSString *)serviceID {
+ [parameters sdl_setObject:serviceID forName:SDLRPCParameterNameServiceID];
+}
+
+- (NSString *)serviceID {
+ NSError *error = nil;
+ return [parameters sdl_objectForName:SDLRPCParameterNameServiceID ofClass:NSString.class error:&error];
+}
+
+- (void)setOriginApp:(NSString *)originApp {
+ [parameters sdl_setObject:originApp forName:SDLRPCParameterNameOriginApp];
+}
+
+- (NSString *)originApp {
+ NSError *error = nil;
+ return [parameters sdl_objectForName:SDLRPCParameterNameOriginApp ofClass:NSString.class error:&error];
+}
+
+- (void)setRequestServiceActive:(nullable NSNumber<SDLBool> *)requestServiceActive {
+ [parameters sdl_setObject:requestServiceActive forName:SDLRPCParameterNameRequestServiceActive];
+}
+
+- (nullable NSNumber<SDLBool> *)requestServiceActive {
+ return [parameters sdl_objectForName:SDLRPCParameterNameRequestServiceActive ofClass:NSNumber.class error:nil];
+}
+@end
+
+NS_ASSUME_NONNULL_END